/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package pas.conexion;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.InputStream;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.NoSuchElementException;
import java.util.Properties;

/**
 *
 * @author Julio
 */
public class Conexion {
    
        //La url con la cual nos conectariamos a la base de datos
    private static String url = "jdbc:postgresql://localhost:5432/pasajes";
    //El usuario de la base de datos
    private static String user = "postgres";
    //La clave del usuario de la base de datos
    private static String password = "mysql";
    //Metodo para obtener la conexion con la base de datos
    public static synchronized Connection getConexion() {
        Connection cn = null;
        try {
            //Cargamos el driver y le decimos que vamos a usar
            //una conexion con mysql
            Class.forName("org.postgresql.Driver");
            //Obtenemos la conexion
            cn = DriverManager.getConnection(url, user, password);
        } catch (Exception e) {
            e.printStackTrace();
            cn = null;
        } finally {
            return cn;
        }
    }
    //Metodo utilizado para cerrar el callablestatemente
    public static synchronized void cerrarCall(CallableStatement cl) {
        try{cl.close();}catch(Exception e){}
    }
    //Metodo utilizado para cerrar el resulset de datos
    public static synchronized void cerrarConexion(ResultSet rs) {
        try{rs.close();} catch (Exception e) {}
    }
    //Metodo utilizado para cerrar la conexion
    public static synchronized void cerrarConexion(Connection cn) {
        try{cn.close();} catch (Exception e) {}
    }
    //Metodo utilizado para deshacer los cambios en la base de datos
    public static synchronized void deshacerCambios(Connection cn) {
        try{cn.rollback();}catch (Exception e){}
    }
     public static synchronized void cerrarPrep(PreparedStatement pre) {
        try{pre.close();}catch(Exception e){}
    }
    
    
}
